package org.zjx.analysis.analyze;

import java.awt.image.BufferedImage;

/**
 * 图片分析器接口
 * 分离条件判断和具体分析
 */
public interface ImageAnalyzer {

    /**
     * 快速判断当前图片是否匹配此分析器
     * 只做轻量级检查，不进行详细分析
     *
     * @param image 要判断的图片
     * @return 如果匹配返回true
     */
    boolean matches(BufferedImage image);

    /**
     * 详细分析图片（只有在matches返回true时才调用）
     *
     * @param image 要分析的图片
     */
    void analyze(BufferedImage image);

    /**
     * 获取分析器名称
     */
    String getAnalyzerName();

    /**
     * 获取分析器负责的场景类型
     */
    String getSceneType();
}